package com.hjm.project.terminal.changeFeeRecord.mapper;

import java.util.List;

import com.hjm.project.agentInfo.agentInfo.domain.AgentInfo;
import com.hjm.project.terminal.changeFeeRecord.domain.ChangeFeeRecord;

/**
 * 变更通讯费记录Mapper接口
 *
 * @author maker-platform
 * @date 2023-04-03
 */
public interface ChangeFeeRecordMapper
{
    /**
     * 查询变更通讯费记录
     *
     * @param sysId 变更通讯费记录ID
     * @return 变更通讯费记录
     */
    public ChangeFeeRecord selectChangeFeeRecordById(Integer sysId);

    /**
     * 查询变更通讯费记录列表
     *
     * @param changeFeeRecord 变更通讯费记录
     * @return 变更通讯费记录集合
     */
    public List<ChangeFeeRecord> selectChangeFeeRecordList(ChangeFeeRecord changeFeeRecord);

    /**
     * 查询变更通讯费记录列表
     *
     * @param changeFeeRecord 变更通讯费记录
     * @return 变更通讯费记录查询一个结果
     */
    public ChangeFeeRecord selectChangeFeeRecordOne(ChangeFeeRecord changeFeeRecord);

    /**
     * 新增变更通讯费记录
     *
     * @param changeFeeRecord 变更通讯费记录
     * @return 结果
     */
    public int insertChangeFeeRecord(ChangeFeeRecord changeFeeRecord);

    /**
     * 修改变更通讯费记录
     *
     * @param changeFeeRecord 变更通讯费记录
     * @return 结果
     */
    public int updateChangeFeeRecord(ChangeFeeRecord changeFeeRecord);

    /**
     * 删除变更通讯费记录
     *
     * @param sysId 变更通讯费记录ID
     * @return 结果
     */
    public int deleteChangeFeeRecordById(ChangeFeeRecord changeFeeRecord);

    /**
     * 批量删除变更通讯费记录
     *
     * @param sysIds 需要删除的数据ID
     * @return 结果
     */
    public int deleteChangeFeeRecordByIds(String[] sysIds);

    /**
     * 获取代理商
     * @param agentInfo
     * @return
     */
    public List<ChangeFeeRecord> getAgentInfoList(AgentInfo agentInfo);

    /**
     * 获取sn
     * @param changeFeeRecord
     * @return
     */
    public List getPosByAgent(ChangeFeeRecord changeFeeRecord);

    /**
     * 修改终端流量卡费 branch_pos
     * @param changeFeeRecord
     * @return
     */
    public int updateSnSimFeeBp(ChangeFeeRecord changeFeeRecord);

    /**
     * 修改终端流量卡费 formal_pos
     * @param changeFeeRecord
     * @return
     */
    public int updateSnSimFeeFp(ChangeFeeRecord changeFeeRecord);

    /**
     * 获取返现数据
     * @param changeFeeRecord
     * @return
     */
    public int getBankReturnCount(ChangeFeeRecord changeFeeRecord);

    /**
     * 获取录入数据
     * @param changeFeeRecord
     * @return
     */
    public int getChangeFeeCount(ChangeFeeRecord changeFeeRecord);

}
